const fs = require('fs');
const path = require('path');

const distPath = path.resolve(__dirname, 'dist');

function deleteFolderRecursive (folderPath) {
  if (!fs.existsSync(folderPath)) {
    return;
  }

  const files = fs.readdirSync(folderPath);
  files.forEach((file) => {
    const fullPath = path.join(folderPath, file);
    const stat = fs.lstatSync(fullPath);

    if (stat.isDirectory()) {
      deleteFolderRecursive(fullPath); // 递归删除子目录
      fs.rmdirSync(fullPath); // 删除空子目录
    } else {
      fs.unlinkSync(fullPath); // 删除文件
    }
  });

  // 注意：这里不应该删除 dist 文件夹本身，只清空它的内容。
  // 如果你确实想删除 dist 文件夹，请在脚本外部处理，或者在这里添加一个条件判断。
}

try {
  deleteFolderRecursive(distPath);
  console.log('dist 已清理！');
} catch (err) {
  console.error('报错了:', err);
}
